package com.tomcat.myapplication.util;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Random;

/**
 * 日期时间处理类
 * Created by Android on 2018/3/22.
 */

public class DateTimeUtil {

    public static String getCurrentTime() {
        return getCurrentTime("yyyy-MM-dd");
    }

    public static String getCurrentTime(String format) {
        java.text.SimpleDateFormat sdf = new SimpleDateFormat(format);
        return sdf.format(new java.util.Date());
    }


    /**
     * 获取指定天数前的日期
     *
     * @param d
     * @param format
     * @return
     */
    public static String getBeforeDate(int d, String format) {
        java.util.Calendar calendar = Calendar.getInstance();
        calendar.add(Calendar.DAY_OF_MONTH, -d);
        java.text.SimpleDateFormat sdf = new SimpleDateFormat(format);
        return sdf.format(calendar.getTime());

    }


    /**
     * 获取指定天数后的日期
     *
     * @param d
     * @param format
     * @return
     */
    public static String getAfterDate(int d, String format) {
        java.util.Calendar calendar = Calendar.getInstance();
        calendar.add(Calendar.DAY_OF_MONTH, d);
        java.text.SimpleDateFormat sdf = new SimpleDateFormat(format);
        return sdf.format(calendar.getTime());

    }

    /**
     * 流水ID
     * 流水ID生成方式,年月日时分秒毫秒的时间戳+四位随机数保证不重复
     */
    public static String getRandomId() {
        //当前系统时间戳精确到毫秒
        Long simple = System.currentTimeMillis();
        //三位随机数
        int random = new Random().nextInt(900) + 100;//为变量赋随机值100-999;
        return simple.toString() + random;
    }

    /**
     * 获取当前系统时间
     *
     * @return
     */
    public static String currentTime() {
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");// HH:mm:ss
        //获取当前时间
        Date date = new Date(System.currentTimeMillis());
        return simpleDateFormat.format(date);
    }


}
